The present invention relates generally to the field of computer imaging and more particularly, to rendering of photorealistic computer graphic images.
The ability to synthesize photorealistic images in real-time has been the goal of practitioners in the field of computer graphics for many years. A variety of different techniques are known for generating images of three-dimensional objects on a computer graphics display. One class of techniques divide a two-dimensional array of data values into shaded polygons, which are then projected onto the display screen. To accelerate the image generation process, many polygon-based techniques utilize a special graphics processor to alleviate the computational burden on the computer""s central processing unit (CPU).
Another class of computer imaging techniques is known as ray tracing. Ray tracing is a pixel-based technique that is capable of producing highly realistic images in computer graphic systems. A chief drawback of ray tracing techniques, however, is the extensive computations required to generate each pixel of the display screen. These intensive computations often impose a severe burden on the computer processing hardware. The slow processing times associated with ray tracing techniques have limited their application in computer graphics systems. For example, an article entitled, xe2x80x9cOutlook on Computer Graphicsxe2x80x9d, by D. P. Greenburg, IEEE Computer, 31(1): 36-36 (January 1998), suggests that it will not be until the year 2025 before computer systems have the display and computational capability to produce realistic, real-time images using pixel-based techniques.
An example of a computer system that utilizes ray tracing is described in xe2x80x9cAntialiased Ray tracing by Adaptive Progressive Refinement,xe2x80x9d by J. Painter and K. Sloan, Computer Graphics (SIGGRAPH ""89 Proceedings), Vol. 23, pages 281-288 (July 1989). Further background in this area may be found in U.S. Pat. No. 5,872,902, which teaches a hardware implementation of a computationally intensive anti-aliasing technique for generating three-dimensional images on a workstation graphics processor. U.S. Pat. No. 5,831,623 discloses a volume rendering apparatus for visualizing an image on a display screen of an imaging device such as a computer tomagraphy scanner for a magnetic resonance imaging machine. A method and system for generating an anti-aliasing image of a three-dimensional surface is also described in U.S. Pat. No. 5,542,032, which teaches performing certain floating-point arithmetic and comparison operations on pixel data.
Despite the rapidly increasing power of computers, global illumination is far from being a real-time process. Accurate radiance evaluations often require hours of computation for complex scenes. To balance rendering speed and visual realism, global illumination algorithms have often adopted a progressive refinement approach, like that described in the Painter and Sloan article mentioned above. Progressive refinement methods typically sample densely where sharp features are identified. In areas of the image plane where there is an absence of sharp featuresxe2x80x94i.e., the image data changes slowlyxe2x80x94progressive refinement techniques sample very sparsely, and then interpolate.
The problem with these past techniques is that image artifacts are often lost when the sampling criteria is minimized. For instance, if it is desired to keep the sampling rate below 10%, many prior art progressive refinement approaches prove to be inadequate. In other words, although such techniques provide a reasonable approach to the problem, they require relatively high sampling rates to provide fast rendering of photorealistic computer graphics images. At low sampling rates (e.g., less than 10%) previous techniques such as adaptive stochastic sampling suffer from artifacts including heavily jagged edges, missing object parts, and missing high-frequency details.